
// 刷题
//class Solution {
//    public List<Integer> findAnagrams(String s, String p) {
//        List<Integer> ret = new ArrayList<>();
//        if (s == null || s.length() == 0) return ret;
//        int[] hashP = new int[26];
//        int[] hashS = new int[26];
//        for (int i = i = 0; i < p.length(); i++) {
//            char ch = p.charAt(i);
//            hashP[ch - 'a']++;
//        }
//        // count 表示有效字符
//        for (int left = 0, right = 0, count = 0; right < s.length(); right++) {
//            char ch = s.charAt(right);
//            hashS[ch - 'a']++;
//            if (hashS[ch - 'a'] <= hashP[ch - 'a']) count++;
//            while (left <= right && count == p.length()) {
//                if (count == p.length() && right - left + 1 == count) ret.add(left);
//                char c = s.charAt(left);
//                if (hashS[c - 'a'] <= hashP[c - 'a']) count--;
//                hashS[c - 'a']--;
//                left++;
//            }
//        }
//
//        return ret;
//    }
//}